package com.pactera.madp.cp.api.vo.prod;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

@ApiModel(value = "理财产品详情实体")
@Data
public class ProdFinanceDetailVo {

    @ApiModelProperty(value = "id")
    private Integer id;

    @ApiModelProperty(value = "产品编码")
    private String code;

    @ApiModelProperty(value = "产品登记编码")
    private String debtRegistCode;

    @ApiModelProperty(value = "产品名称")
    private String name;

    @ApiModelProperty(value = "风险等级")
    private Integer riskLevel;

    @JsonProperty("pFirstAmt")
    @ApiModelProperty(value = "个人起购金额")
    private Double pFirstAmt;

    @JsonProperty("pAppAmt")
    @ApiModelProperty(value = "个人追加金额")
    private Double pAppAmt;

    @JsonProperty("pMaxAmt")
    @ApiModelProperty(value = "个人单笔最大购买金额")
    private Double pMaxAmt;

    @ApiModelProperty(value = "理财产品类型 0-开放式理财产品 1-开放式净值型理财产品")
    private Integer profolioType;

    @ApiModelProperty(value = "产品状态 0-开放期 1-募集期 2-发行成功 3-发行失败 4-停止交易 5-停止申购 6-停止赎回 7-权益登记 8-红利发放 9-产品封闭 a-产品终止 b-预约认购期")
    private String prdStatus;

    @ApiModelProperty(value = "七日年化收益率")
    private String yield;

    @ApiModelProperty(value = "业绩比较基准")
    private String planVolRate;

    @ApiModelProperty(value = "产品模板信息")
    private String reserve1;

    @ApiModelProperty(value = "产品周期")
    private Integer cycleDays;

    @ApiModelProperty(value = "交易方式 0-开放式 1-半封闭式 2-封闭式 3-半开放式")
    private String prdTemplate;

    @ApiModelProperty(value = "计息天数")
    private Integer productDate;

    @ApiModelProperty(value = "taCode")
    private String taCode;

    @ApiModelProperty(value = "taName")
    private String taName;

    @ApiModelProperty(value = "万份产品单位收益")
    private String incomeUnit;

    @ApiModelProperty(value = "净值")
    private Float nav;

    @ApiModelProperty(value = "产品成立日")
    private String raiseDateS;

    @ApiModelProperty(value = "产品结束日")
    private String raiseDateE;

    @ApiModelProperty(value = "募集起始日期")
    private String investDateS;

    @ApiModelProperty(value = "募集结束日期")
    private String investDateE;

    @ApiModelProperty(value = "开放日")
    private String prevCycleDate;

    @ApiModelProperty(value = "资管代销产品周期说明")
    private String openCycle;

    @ApiModelProperty(value = "业绩基准说明详述")
    private String benchExplainDetail;

    @ApiModelProperty(value = "主页面历史业绩类型 0-月化收益率 1-季度年化收益率 3-半年化收益率 4-年化收益率 5-截止当天年化收益率")
    private String showBenchType;

    @ApiModelProperty(value = "主页面历史业绩")
    private Double benchValue;

    @ApiModelProperty(value = "售卖标识 0-可购买与赎回 1-不许售卖 2-待售 3-预约购买")
    private String purchaseType;

    @ApiModelProperty(value = "合同地址")
    private String productAddress;

    @ApiModelProperty(value = "产品标签")
    private String prdLable;

    @ApiModelProperty(value = "周期到期日")
    private Integer cycleDate;

}
